home *** CD-ROM | disk | FTP | other *** search
/ Aminet 35 / Aminet 35 (2000)(Schatztruhe)[!][Feb 2000].iso / Aminet / game / shoot / ADescentSrc.lha / descent / ui / keytrap.c < prev    next >
C/C++ Source or Header  |  1998-08-08  |  1KB  |  46 lines

  1. /*
  2. THE COMPUTER CODE CONTAINED HEREIN IS THE SOLE PROPERTY OF PARALLAX
  3. SOFTWARE CORPORATION ("PARALLAX").  PARALLAX, IN DISTRIBUTING THE CODE TO
  4. END-USERS, AND SUBJECT TO ALL OF THE TERMS AND CONDITIONS HEREIN, GRANTS A
  5. ROYALTY-FREE, PERPETUAL LICENSE TO SUCH END-USERS FOR USE BY SUCH END-USERS
  6. IN USING, DISPLAYING,  AND CREATING DERIVATIVE WORKS THEREOF, SO LONG AS
  7. SUCH USE, DISPLAY OR CREATION IS FOR NON-COMMERCIAL, ROYALTY OR REVENUE
  8. FREE PURPOSES.  IN NO EVENT SHALL THE END-USER USE THE COMPUTER CODE
  9. CONTAINED HEREIN FOR REVENUE-BEARING PURPOSES.  THE END-USER UNDERSTANDS
  10. AND AGREES TO THE TERMS HEREIN AND ACCEPTS THE SAME BY USE OF THIS FILE.  
  11. COPYRIGHT 1993-1998 PARALLAX SOFTWARE CORPORATION.  ALL RIGHTS RESERVED.
  12. */
  13. #include <stdlib.h>
  14. #include <string.h>
  15.  
  16. #include "fix.h"
  17. #include "types.h"
  18. #include "gr.h"
  19. #include "ui.h"
  20. #include "key.h"
  21.  
  22.  
  23. UI_GADGET_KEYTRAP * ui_add_gadget_keytrap( UI_WINDOW * wnd, int key_to_trap, int (*function_to_call)(void)  )
  24. {
  25.     UI_GADGET_KEYTRAP * keytrap;
  26.  
  27.     keytrap = (UI_GADGET_KEYTRAP *)ui_gadget_add( wnd, 8, 0, 0, 0, 0 );
  28.     keytrap->parent = (UI_GADGET *)keytrap;
  29.  
  30.     keytrap->trap_key = key_to_trap;
  31.     keytrap->user_function = function_to_call;
  32.  
  33.     return keytrap;
  34.  
  35. }
  36.  
  37. void ui_keytrap_do( UI_GADGET_KEYTRAP * keytrap, int keypress )
  38. {
  39.     int result;
  40.  
  41.     if ( keypress == keytrap->trap_key )
  42.     {
  43.         result = keytrap->user_function();
  44.     }
  45. }
  46.